#define  _CRT_SECURE_NO_WARNINGS

//#include <iostream>
//using namespace std;
//
//class A
//{
//public:
//	A(int a1 = 0, int a2 = 0)
//		:_a1(a1)
//	{
//		cout << "A(int a1 = 0, int a2 = 0)" << endl;
//	}
//
//	A(const A& aa)
//		:_a1(aa._a1)
//	{
//		cout << "A(const A & aa)" << endl;
//	}
//
//	~A()
//	{
//		cout << "~A()" << endl;
//	}
//private:
//	int _a1 = 1;
//	int _a2 = 2;
//};
//
//class B
//{
//	//...
//private:
//	int _a1 = 1;
//	int _a2 = 2;
//};
//
//int main()
//{
//	//B* p1 = new B[10];
//	//delete p1;
//
//	A* p2 = new A[10];
//	delete p2;
//
//	return 0;
//}

//#include <iostream>
//#include <string>
//using namespace std;
//
//int main()
//{
//	string s;
//	getline(cin, s);
//	cout << s << endl;
//	return 0;

//#include <iostream>
//using namespace std;
//
//namespace yjz
//{
//	template<class T>
//	class String
//	{
//	private:
//		T _arr;
//
//	};
//}
//
//int main()
//{
//	return 0;
//}